﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EMC.VISITOR.Application
{
    /// <summary>
    /// 海康门禁点信息
    /// </summary>
    [SugarTable(null, "海康门禁点")]
    [BusinessVS]
    public class HKDoorPoint: EntityBase
    {
        /// <summary>
        /// 资源唯一编码
        /// </summary>
        [SugarColumn(ColumnDescription = "资源唯一编码", IsNullable =true)]
        public string indexCode { get; set; }
        /// <summary>
        /// 资源名称
        /// </summary>
        [SugarColumn(ColumnDescription = "资源名称", IsNullable = true)]
        public string name { get; set; }
        /// <summary>
        /// 资源类型
        /// </summary>
        [SugarColumn(ColumnDescription = "资源类型", IsNullable = true)]
        public string resourceType { get; set; }
        /// <summary>
        /// 门禁点编号
        /// </summary>
        [SugarColumn(ColumnDescription = "门禁点编号", IsNullable = true)]
        public string doorNo { get; set; }
        [SugarColumn(ColumnDescription = "门禁点描述", IsNullable = true)]
        public string description { get; set; }
        /// <summary>
        /// 父级资源编号
        /// </summary>
        [SugarColumn(ColumnDescription = "父级资源编号", IsNullable = true)]
        public string parentIndexCode { get; set; }
        /// <summary>
        /// 所属区域
        /// </summary>
        [SugarColumn(ColumnDescription = "所属区域编号", IsNullable = true)]
        public string regionIndexCode { get; set; }
        /// <summary>
        /// 接入协议
        /// </summary>
        [SugarColumn(ColumnDescription = "接入协议", IsNullable = true)]
        public string treatyType { get; set; }
        /// <summary>
        /// 通道类型，door：门禁点
        /// </summary>
        [SugarColumn(ColumnDescription = "通道类型，door：门禁点", IsNullable = true)]
        public string channelType { get; set; }
        /// <summary>
        /// 通道号
        /// </summary>
        [SugarColumn(ColumnDescription = "通道号", IsNullable = true)]
        public string channelNo { get; set; }
        /// <summary>
        /// 一级控制器id
        /// </summary>
        [SugarColumn(ColumnDescription = "一级控制器id", IsNullable = true)]
        public string controlOneId { get; set; }
        /// <summary>
        /// 二级控制器id
        /// </summary>
        [SugarColumn(ColumnDescription = "二级控制器id", IsNullable = true)]
        public string controlTwoId { get; set; }
        /// <summary>
        /// 读卡器1
        /// </summary>
        [SugarColumn(ColumnDescription = "读卡器1", IsNullable = true)]
        public string readerInId { get; set; }
        /// <summary>
        /// 读卡器2
        /// </summary>
        [SugarColumn(ColumnDescription = "读卡器2", IsNullable = true)]
        public string readerOutId { get; set; }
        //[SugarColumn( IsNullable = true)]
        //public string createTime { get; set; }
        //[SugarColumn( IsNullable = true)]
        //public string updateTime { get; set; }
        /// <summary>
        /// 区域名称
        /// </summary>
        [SugarColumn(ColumnDescription = "区域名称", IsNullable = true)]
        public string regionName { get; set; }
        [SugarColumn(ColumnDescription = "区域路径", IsNullable = true)]
        public string regionPath { get; set; }
        [SugarColumn(ColumnDescription = "区域路径名称", IsNullable = true)]
        public string regionPathName { get; set; }
        [SugarColumn( IsNullable = true)]
        public int isCascade { get; set; }
        /// <summary>
        /// 排序
        /// </summary>
        [SugarColumn(IsNullable = true)]
        public int? sort { get; set; }
        [SugarColumn(IsNullable = true)]
        public int? disOrder { get; set; }
        /// <summary>
        /// 门序号
        /// </summary>
        [SugarColumn(ColumnDescription = "门序号", IsNullable = true)]
        public int? doorSerial { get; set; }

        #region 不需要的字段
        /// <summary>
        /// 创建时间
        /// </summary>
        [SugarColumn(IsIgnore = true)]
        public override DateTime? CreateTime { get; set; }


        /// <summary>
        /// 更新时间
        /// </summary>
        [SugarColumn(IsIgnore = true)]
        public override DateTime? UpdateTime { get; set; }
        #endregion
    }
}
